﻿/* 
 * Since 2008 - 2012
 */

package com.hh.bss.project.service;
import java.io.File;
import java.io.Serializable;

import org.springframework.dao.DataAccessException;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
import org.springframework.web.multipart.MultipartFile;
import org.springframework.web.multipart.MultipartHttpServletRequest;

import java.util.*;

import javax.servlet.http.HttpServletRequest;

import com.hh.bss.auth.client.OnlineUser;
import com.hh.bss.base.*;
import com.hh.bss.common.page.*;
import com.hh.bss.common.page.impl.*;
import com.hh.bss.customer.entity.CompanyAttachment;
import com.hh.bss.oa.entity.OaEmailSend;
import com.hh.bss.project.dao.*;
import com.hh.bss.project.entity.*;
import com.hh.bss.project.service.*;
import com.hh.bss.project.vo.query.*;
import com.hh.bss.util.*;





public interface ContractJobCvRecomService<E,PK extends Serializable> extends  BusinessService<E,PK>{
	public Page findPage(ContractJobCvRecomQuery query);	
	public Page findJobRecomCvPage(ContractJobCvRecomQuery query);
	public List findJobRecomCv(ContractJobCvRecomQuery query);
	public List getContractJobCvRecomById(Integer id);
	//public void saveFile(MultipartHttpServletRequest multipartRequest,HttpServletRequest request,ContractJobCvRecom contractJobCvRecom);
	public void saveFile(MultipartHttpServletRequest multipartRequest,MultipartFile multipartFile,ContractJobCvRecom contractJobCvRecom,int type);
	public void autoGenFile(HttpServletRequest request,ContractJobCvRecom contractJobCvRecom);
	public void save(ContractJobCvRecom contractJobCvRecom) throws DataAccessException;
	public OaEmailSend getOaEmailSendByRecomId(Integer id);
	public File genRecomDoc(HttpServletRequest request,OnlineUser onlineUser,ContractJobCvRecom contractJobCvRecom);
	public File genRecomDocEn(HttpServletRequest request,OnlineUser onlineUser,ContractJobCvRecom contractJobCvRecom);
	public List getJobContacter(Integer jobId);
	public ContractJobCvRecom getContractJobCvRecom(Integer jobId,Integer cvId);
	public void updateRecomStatus(ContractJobCvRecom contractJobCvRecom);
}
